package de.e2it3t.schulverwaltung.ui;

import javax.swing.JComponent;

/**
 * Interface für View der Anwendung. <br>
 * <br>
 * Views implementieren dieses Interface und {@link AppFrame} listet alle Views
 * in Tabs.
 * 
 * @author Markus Kunz und Viktor Reiser
 */
public interface AppView {
    
    /**
     * Die View auffordern die Inhalte (Daten) zu erneuern.
     */
    public void refreshView();
    
    /**
     * Die visuelle Komponente, welche im Tab eingebunden wird.
     * 
     * @return Referenz auf die anzuzeigende View
     */
    public JComponent getView();
    
    /**
     * Name der View, welcher für den Tab verwendet wird.
     * 
     * @return Name der View
     */
    public String getViewName();
}
